const { WebSocketServer } = require('ws');
const WebSocket = require('ws');
const History = require('./data/history.json');
const fs = require('fs');
//储存历史记录
let HistoryMessage = [];

// 我们的 port 是 8888
const wss = new WebSocketServer({ port: 8080 });
// 如果有ws 就表明我们已经初始化成功
if (wss) {
    console.log('WebSocket成功在端口上初始化: ' + 8080);
}

wss.onmessage = function (event) {
    console.log('收到服务器消息', event.data);
};
const keepSendMessage = {
    你好: '您好,我是您的医生助手',
    再见: '再见,有问题随时找我噢!',
    '*': '请上传能反应患者病情的相关资料,上传的资料仅自己和医生可见',
    https: '请问您想为以下哪位患者咨询',
};

function handleMessage(text) {
    text = text;
    console.log(keepSendMessage[text]);
    if (keepSendMessage[text]) {
        return keepSendMessage[text];
    } else if (text.length > 15) {
        return '请问您想为以下哪位患者咨询';
    } else {
        return '请上传能反应患者病情的相关资料,上传的资料仅自己和医生可见';
    }
}

wss.on('connection', (ws) => {
    // 初始化时发送欢迎的消息;
    // 注册收到消息的事件
    ws.on('message', (message) => {
        // 将接收到的数据解析为JSON格式
        const data = JSON.parse(message);
        console.log(data);

        // console.log(data);
        const cleanMessage = data.content;
        const resply = handleMessage(cleanMessage);
        ws.send(resply);
        // console.log(resply);
    });

    // 被动断开 说明用户已经离开网站了 我们维护在线列表
    ws.on('close', function () {
        console.log('断开服务');
    });
});
